package com.sms.dao;

import java.util.List;
import java.util.Map;

import com.sms.po.ChargeRecord;


/**
 * 用户充值流水接口
 * @author 2011-12-19 下午01:21:55 by hzx
 */
public interface IChargeRecordDAO {
	
	/**
	 * 增加一个流水对象
	 * @param cr
	 * @return
	 */
	boolean addChargeRecordSerial(ChargeRecord cr);
	
	/**
	 * 更新一个流水对象
	 * @param cr
	 * @return
	 */
	boolean updateChargeRecordSerial(ChargeRecord cr);
	
	/**
	 * 删除一个流水
	 * @param cr
	 * @return
	 */
	boolean removeChargeRecordSerial(ChargeRecord cr);
	
	/**
	 * 根据id删除一个流水
	 * @param id
	 * @return
	 */
	boolean removeChargeRecordSerialById(long id);
	
	/**
	 * 根据一个id查询出一个流水对象
	 * @param id
	 * @return
	 */
	ChargeRecord findChargeRecordSerialById(long id);
	

	/**
	 * 根据一个用户id查询出一组流水对象，如果user_id为空，则查询全部
	 * @param user_id
	 * @param date
	 * @param start
	 * @param limit
	 * @return
	 */
	List<ChargeRecord> findChargeRecordSerialByUser(Map<String,Object> map,int start,int limit);
	
	/**
	 * 根据一个用户id查询出一组流水对象总数，如果user_id为空，则查询全部总数
	 * @param user_id
	 * @param start
	 * @param limit
	 * @return
	 */
	int findChargeRecordSerialByUserCount(Map<String,Object> map);
	
	
}